Only build NavigationPaneHelper on Windows
authorClaudio Cambra <claudio.cambra@nextcloud.com>
Mon, 19 Dec 2022 16:05:13 +0000 (17:05 +0100)
committerJyrki Gadinger <nilsding@nilsding.org>
Tue, 15 Apr 2025 11:59:22 +0000 (13:59 +0200)
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
src/gui/CMakeLists.txt
src/gui/folderman.cpp
src/gui/folderman.h

index 2bfa004dd7fa3e44829001ea6ec1d075d7628ed9..a58117fcfe5b66251ae102bc9eb63a0a7a4c4056 100644 (file)
@@ -109,8 +109,6 @@ set(client_SRCS
     lockwatcher.cpp
     logbrowser.h
     logbrowser.cpp
-    navigationpanehelper.h
-    navigationpanehelper.cpp
     networksettings.h
     networksettings.cpp
     ocsnavigationappsjob.h
@@ -339,13 +337,19 @@ IF( APPLE )
 ENDIF()
 
 IF( NOT WIN32 AND NOT APPLE )
-set(client_SRCS ${client_SRCS} folderwatcher_linux.cpp)
+    set(client_SRCS ${client_SRCS} folderwatcher_linux.cpp)
 ENDIF()
 IF( WIN32 )
-set(client_SRCS ${client_SRCS} folderwatcher_win.cpp shellextensionsserver.cpp ${CMAKE_SOURCE_DIR}/src/common/shellextensionutils.cpp)
+    set(client_SRCS
+        ${client_SRCS}
+        folderwatcher_win.cpp
+        navigationpanehelper.h
+        navigationpanehelper.cpp
+        shellextensionsserver.cpp
+        ${CMAKE_SOURCE_DIR}/src/common/shellextensionutils.cpp)
 ENDIF()
 IF( APPLE )
-list(APPEND client_SRCS folderwatcher_mac.cpp)
+    list(APPEND client_SRCS folderwatcher_mac.cpp)
 ENDIF()
 
 set(3rdparty_SRC
index 6be6516e4c49c88e63fe3edf47424d100f00e72a..892c4fef0f44162e521940a03b0dd62a16063471 100644 (file)
@@ -62,7 +62,9 @@ FolderMan *FolderMan::_instance = nullptr;
 FolderMan::FolderMan(QObject *parent)
     : QObject(parent)
     , _lockWatcher(new LockWatcher)
+#ifdef Q_OS_WIN
     , _navigationPaneHelper(this)
+#endif
 {
     ASSERT(!_instance);
     _instance = this;
@@ -1257,7 +1259,9 @@ Folder *FolderMan::addFolder(AccountState *accountState, const FolderDefinition
         emit folderListChanged(_folderMap);
     }
 
+#ifdef Q_OS_WIN
     _navigationPaneHelper.scheduleUpdateCloudStorageRegistry();
+#endif
     return folder;
 }
 
@@ -1277,10 +1281,12 @@ Folder *FolderMan::addFolderInternal(
 
     auto folder = new Folder(folderDefinition, accountState, std::move(vfs), this);
 
+#ifdef Q_OS_WIN
     if (_navigationPaneHelper.showInExplorerNavigationPane() && folderDefinition.navigationPaneClsid.isNull()) {
         folder->setNavigationPaneClsid(QUuid::createUuid());
         folder->saveToSettings();
     }
+#endif
 
     qCInfo(lcFolderMan) << "Adding folder to Folder Map " << folder << folder->alias();
     _folderMap[folder->alias()] = folder;
@@ -1414,7 +1420,9 @@ void FolderMan::removeFolder(Folder *folderToRemove)
         delete folderToRemove;
     }
 
+#ifdef Q_OS_WIN
     _navigationPaneHelper.scheduleUpdateCloudStorageRegistry();
+#endif
 
     emit folderListChanged(_folderMap);
 }
@@ -1551,7 +1559,9 @@ void FolderMan::slotWipeFolderForAccount(AccountState *accountState)
             delete f;
         }
 
+#ifdef Q_OS_WIN
         _navigationPaneHelper.scheduleUpdateCloudStorageRegistry();
+#endif
     }
 
     emit folderListChanged(_folderMap);
index b76ede8da3f1684cd5cd46d9caf7efd3675e423c..9ab08c9ab4bc412f77edf223a8d1ee3975a5e795 100644 (file)
@@ -23,7 +23,9 @@
 
 #include "folder.h"
 #include "folderwatcher.h"
+#ifdef Q_OS_WIN
 #include "navigationpanehelper.h"
+#endif
 #include "syncfileitem.h"
 
 class TestFolderMan;
@@ -403,7 +405,9 @@ private:
     bool _nextSyncShouldStartImmediately = false;
 
     QScopedPointer<SocketApi> _socketApi;
+#ifdef Q_OS_WIN
     NavigationPaneHelper _navigationPaneHelper;
+#endif
 
     QPointer<UpdateE2eeFolderUsersMetadataJob> _removeE2eeShareJob;